home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 2 / Gold Medal Software Volume 2 (Gold Medal) (1994).iso / utils / fill401.arj / FILL.DOC < prev    next >
Text File  |  1994-01-08  |  15KB  |  287 lines

  1. FILL.DOC
  2. 01/08/94
  3.  
  4. The FILL program is designed to help you move or copy files off a hard disk
  5. while reducing the amount of wasted space on the destination disks.  Internally,
  6. it does this by sorting the file names so the largest files are moved/copied
  7. first.  It then moves or copies whatever files can fit on the floppy, skipping
  8. any that can't.  Features:
  9.  
  10.   * Can either move or copy the files to the resulting location
  11.   * Can go onto to multiple diskettes as desired, beeping if desired when
  12.     the next disk is expected
  13.   * Can move the files in file name order or any of standard ordering
  14.     categories
  15.   * Can be used to split up files which are too big to fit on a single disk
  16.   * Can create a status/transaction file for you, showing what was copied/moved
  17.   * Can label the output diskette, providing some patterns like sequence numbers
  18.     and dates which it will fill in for you
  19.   * Some times useful for network transfers where standard MOVE command doesn't
  20.     always work
  21.   * Can review and delete if desired any files which are already in the output
  22.     destination (e.g. already on the output diskette)
  23.  
  24. Some of the default values for this routine can be set using the CONFIGWS.EXE
  25. program contained in FILLymm.ZIP.
  26.  
  27. Limits:
  28.   * Routine can only process the first 500 files in a given subdirectory.  It
  29.     ignores the rest of them.
  30.   * Routine can only review for deletion the first 200 files in the output
  31.     location.
  32.   * Routine does not provide any cool write-error recovery.  If it finds a DOS
  33.     error on the output drive, it just stops.
  34.   * Routine will not format the output diskette for you.
  35.   * Routine's continual testing for new diskette (/CONTINUAL) only works if the
  36.     diskette was formatted using DOS 4.0 or later.  That's the version that
  37.     puts volume sequence numbers on the diskettes.  One way to insure this if
  38.     you're using the newer versions of DOS is to do a quick-reformat of your
  39.     floppies whenever you'd normally do a DEL A:*.*.  I do this with a QDR.BAT
  40.     command that has the following:
  41.  
  42.         FORMAT %1 /Q /U /V:Bruce
  43.  
  44.     I then say "QDR A:" or "QDR B:".  It invokes an unconditional quick format
  45.     and applies a volume label on the diskette (to avoid the prompt).  If the
  46.     diskette does not have a sequence number, DOS tells you it can't be
  47.     quick-formatted and asks if it can do the full format instead.
  48.  
  49.  
  50.  
  51. Syntax:
  52.  
  53.     FILL [ source-filespec ] [ dest-drive: | dest-drive:\path\ ]
  54.       [ /MOVE | /COPY ] [ /PROMPT | /-PROMPT ]
  55.       [ /OVERWRITE | /-OVERWRITE | /OVERSKIP | /OVERASK ]
  56.       [ /Ox | /O-x ] [ /Xfilespec ]... [ /WIPE | /-WIPE ] [ /MULTI | /SINGLE ]
  57.       [ /SPLIT ] [ /LABEL=label [ /START=n ] ] [ /Ffilespec [ /S+ | /S- | S* ]
  58.       [ /CONTINUAL ] [ /BEEP | /-BEEP ] [ /Q ] [ /? ]
  59.  
  60. where:
  61.  
  62. "source-filespec" is the file specification for what you want to move.  You can
  63. specify a drive and path and file wildcards if necessary (e.g.  "C:\TEMP\*.BAT")
  64. but otherwise it defaults to your default drive and directory and takes "*.*".
  65. Note that the program cannot handle any request for more than 500 files at a
  66. time.
  67.  
  68. "dest-drive:" or dest-drive:\path" tells the routine what drive or path to move
  69. the files to.  In many cases, the routine doesn't really care whether the source
  70. specification precedes or follows the destination specification.  If either
  71. parameter ends with a colon (e.g.  "A:") or slash (e.g.  "C:\QB45\"), the
  72. routine will presume that's the destination specification and the other one must
  73. be the source specification.  If either parameter contains a wildcard, the
  74. routine will presume that's the source specification and the other one must be
  75. the destination specification.  So "FILL A:  *.BAS" is the same as "FILL *.BAS
  76. A:".  The default destination drive (dest-drive:, not dest-drive:\path) can be
  77. set by using the CONFIGWS.EXE program.  The original default is "A:".
  78.  
  79. "/MOVE" says to move the files instead of copying them.  The default value for
  80. this option can be set by using the CONFIGWS.EXE program.  The original default
  81. is "/MOVE".
  82.  
  83. "/COPY" says to copy the files instead of moving them.  The default value for
  84. this option can be set by using the CONFIGWS.EXE program.  The original default
  85. is "/MOVE".
  86.  
  87. "/PROMPT" says to prompt for each filename before moving it.  The default value
  88. for this option can be set by using the CONFIGWS.EXE program.  The original
  89. default is "/-PROMPT".
  90.  
  91. "/-PROMPT" says to not prompt for each file.  The default value for this option
  92. can be set by using the CONFIGWS.EXE program.  The original default is
  93. "/-PROMPT".
  94.  
  95.  
  96. "/OVERWRITE" says to overwrite same-named files in the destination path.  The
  97. default value for this option can be set by using the CONFIGWS.EXE program.  The
  98. original default is "/OVERSKIP".
  99.  
  100. "/-OVERWRITE" says to abort if any same-named files are found in the destination
  101. path.  The default value for this option can be set by using the CONFIGWS.EXE
  102. program.  The original default is "/OVERSKIP".
  103.  
  104. "/OVERSKIP" says to skip any file that already exists in the destination path.
  105. The counts aren't accurate in this case.  The default value for this option can
  106. be set by using the CONFIGWS.EXE program.  The original default is "/OVERSKIP".
  107.  
  108. "/OVERASK" says to prompt if same-named files exist in the destination
  109. directory.  The default value for this option can be set by using the
  110. CONFIGWS.EXE program.  The original default is "/OVERSKIP".
  111.  
  112. "/Ox" and "/O-x" allow you to specify the copy order for the files.  "x" can be
  113. one of the following:
  114.  
  115.         N = file name
  116.         D = file date and time
  117.         S = file size
  118.  
  119. If you precede the "x" with a dash ("-"), the sort will be done in reverse
  120. order.  Note that this parameter does not determine which files are copied; it
  121. only determines what order they are actually copied.  Since the order that the
  122. file tends to show up in a DOS DIR listing is based on creation order, this
  123. sequence may be relevant to how the files ultimately show up.  The default value
  124. for this option can be set by using the CONFIGWS.EXE program.  The original
  125. default is "/ON".
  126.  
  127. "/Xfilespec" says to exclude certain filespecs from being moved.  You can
  128. specify up to 10 exclusion parameters but each must have their own /Xfilespec
  129. statement.  For example, to move all files except those with a BAS extension,
  130. you could say "FILL /X*.BAS".
  131.  
  132.  
  133. "/WIPE" says that if the destination drive has files on it, prompt the user
  134. for whether these files should be deleted or not.  Four options show up in this
  135. case:
  136.  
  137.     Do *NOT* delete the x file(s)    Don't delete anything
  138.     List file(s)                     List the files but don't delete any of
  139.                                      them.  The user will be reprompted for
  140.                                      these four options after pressing a key.
  141.     Select file(s) to delete         List the files and allow the user to
  142.                                      select any to be deleted.  Keys:
  143.                                         * Cursor keys -- move among list
  144.                                         * Space       -- select that file
  145.                                         * Ctrl-Enter  -- select all files
  146.                                         * Ctrl-bs     -- deselect all files
  147.                                         * Enter       -- process those tagged
  148.                                         * Esc         -- skip processing
  149.                                      After pressing Enter, the selected files
  150.                                      will be deleted.  You will then get the
  151.                                      standard four prompts again.
  152.     Delete all file(s)               Delete all files in the specified
  153.                                      directory.  Directory files will not
  154.                                      be deleted.
  155.  
  156. The default value for this option can be set by using the CONFIGWS.EXE program.
  157. The original default is "/-WIPE".
  158.  
  159. "/-WIPE" reverses /WIPE.  The default value for this option can be set by using
  160. the CONFIGWS.EXE program.  The original default is "/-WIPE".
  161.  
  162. "/MULTI" says to go to a second disk if all of the files can't fit on the first
  163. diskette.  The default value for this option can be set by using the
  164. CONFIGWS.EXE program.  The original default is "/MULTI".
  165.  
  166. "/SINGLE" says process only one diskette at a time and to not prompt for the
  167. next diskette once the first gets filled up.  The default value for this option
  168. can be set by using the CONFIGWS.EXE program.  The original default is "/MULTI".
  169.  
  170. "/SPLIT" says to split up large files which otherwise would not be able to fit
  171. onto the output disk.  For example, /SPLIT is useful when you have a 1.8MB file
  172. that you're trying to copy or move to a 1.2MB or 1.44MB diskette.  Files are
  173. split only if an empty diskette in the output destination would not be able to
  174. support the file; it will not split up a 800KB file just because the 1.2MB
  175. output diskette only has 600KB free.  Files will be given the extensions of
  176. .001, .002, etc until all necessary splitting is accomplished.  To put them back
  177. together again, use the DOS COPY copy with the /B option.  For example:
  178.  
  179.         COPY TEST.001/B+TEST.002/B TEST.ZIP
  180.  
  181.  
  182. "/LABEL=label" specifies the volume label to be written to the output disk.
  183. By default, the label is not changed.  The label can be a quoted mixed-case
  184. string.  It can contain several replacable lowercase only parameters: "mm" is
  185. replaced with the two-digit month, "dd" is replaced with the two-digit day, "yy"
  186. is replaced with the two-digit year, and "n" or "nn" or "nnn" is replaced by the
  187. sequence number of the disk.  All numeric fields are padded to the left with
  188. zeroes as necessary.  If the current date is November 7, 1993:
  189.  
  190.         /LABEL="BKyymmdd nn"
  191.  
  192. will label the first first "BK931107 01", the second disk "BK931107 02" etc.
  193. Note that labels can be no longer than 11 characters in length.  All characters
  194. except the replacable parameters will be translated to uppercase characters.
  195.  
  196. "/START=n" specifies the first sequence number to use in place of "n", "nn", or
  197. "nnn" in the /LABEL parameter.  Defaults to "/START=1".
  198.  
  199. "/Ffilespec" specifies the name of a status file to be used.  This status file
  200. is a text file that reports on what's been processed by the program.  If it
  201. exists already, the status file is appended to, not overwritten.  A sample of
  202. some lines from the status file using the /S* option (which is not the default):
  203.  
  204.   FILL results for  /copy *.exe /ftest.txt /beep /wipe /s* /split
  205.   Being run on 11-07-1993 at 17:58:10
  206.  
  207.   Label        FileName    Date     Time                Size Operation
  208.  
  209.   TEST93 #01   AV.EXE       09/29/93 00:50:58          70,282 SKIP
  210.   TEST93 #01   BC.EXE       08/19/92 23:59:00         150,562 SKIP
  211.   TEST93 #01   BFIND.EXE    08/02/93 23:07:08          60,016 SKIP
  212.   TEST93 #01   VBDOS.EXE    08/19/92 23:59:00         555,520 COPY
  213.  
  214.   BRUCE        AV.EXE       09/29/93 00:50:58          70,282 SKIP
  215.   BRUCE        BC.EXE       08/19/92 23:59:00         150,562 SKIP
  216.   BRUCE        BFIND.EXE    08/02/93 23:07:08          60,016 SKIP
  217.  
  218. "/S+" specifies that the only files to be written to the status file are those
  219. files that actually get copied/moved.  This is the default.
  220.  
  221. "/S-" specifies that the only files to be written to the status file are those
  222. files that did not get copied/moved.  Since the skipping is determination is
  223. done with each disk, the status file may show the same file name as "SKIP" over
  224. and over again.
  225.  
  226. "/S*" specifies that the status report should contain all files copied/moved as
  227. well as skipped.  This can be a huge report.
  228.  
  229. "/CONTINUAL" is used if you want the routine to continually check your floppy
  230. drive to see when a new diskette has been put in and continue once it recognizes
  231. this has happened.  The only time you'd have to press a key is if you want to
  232. stop processing diskettes (in which case you'd press Escape).  This option is
  233. only available if you're using DOS 4.0 or higher and only works for disks that
  234. have been formatted using DOS 4.0 or higher (it uses the serial number on the
  235. disk in order to determine that the disk has been replaced).
  236.  
  237.  
  238. "/BEEP" says to beep once the routine is done doing its thing (a high tone
  239. followed by a low one).  It will also beep whenever it's time to stick in a new
  240. diskette (a low tone followed by a high one).  The default value for this option
  241. can be set by using the CONFIGWS.EXE program.  The original default is "/BEEP".
  242.  
  243. "/-BEEP" says to not beep upon completion.  The default value for this option
  244. can be set by using the CONFIGWS.EXE program.  The original default is "/BEEP".
  245.  
  246. "/Q" turns off the file-by-file status reporting.
  247.  
  248. "/?" or "/HELP" or "HELP" gives you the syntax of the command.  All current
  249. defaults that can overwritten by using the CONFIGWS.EXE routine are also shown.
  250.  
  251.  
  252. Return codes:
  253.  
  254. FILL returns the following ERRORLEVEL codes:
  255.         0 = no problems, all files copied
  256.         1 = no problems, but some files skipped since /-MULTI
  257.       253 = had problems copying/moving the files
  258.       254 = no files found to copy/move
  259.       255 = syntax problems, or /? requested
  260.  
  261.  
  262. Author:
  263.  
  264. This program was written by Bruce Guthrie of Wayne Software.  It is free for use
  265. and redistribution provided relevant documentation is kept with the program, no
  266. changes are made to the program or documentation, and it is not bundled with
  267. commercial programs or charged for separately.  People who need to bundle it in
  268. for-sale packages must pay a $50 registration fee to "Wayne Software" at the
  269. following address.
  270.  
  271. Additional information about this and other Wayne Software programs can be found
  272. in the file BRUCEymm.DOC which should be included in the original ZIP file.
  273. ("ymm" is replaced by the last digit of the year and the two digit month of the
  274. release.  BRUCE312.DOC came out in December 1993.  This same naming convention
  275. is used in naming the ZIP file that this program was included in.) Comments and
  276. suggestions can also be sent to:
  277.  
  278.                 Bruce Guthrie
  279.                 Wayne Software
  280.                 113 Sheffield St.
  281.                 Silver Spring, MD 20910
  282.  
  283.                 fax: (301) 588-8986
  284.  
  285. Foreign users:  Please provide an Internet address in all correspondence.
  286.  
  287.